using System.ComponentModel.DataAnnotations;

namespace TeachlyQBank.Models
{
    //对应数据库中的T_USER表
    public class User
    {
            // 使用UUID作为用户表的Id
            public Guid user_id{ get; set; }

           [Required(ErrorMessage = "用户名不能为空")]
           [StringLength(50, ErrorMessage = "用户名长度不能超过50个字符")]
           public string ? user_name{ get; set; }

           [Required(ErrorMessage = "电子邮箱不能为空")]
           [EmailAddress(ErrorMessage = "电子邮箱格式不正确")]
           [StringLength(50, ErrorMessage = "电子邮箱不能超过50个字符")]
           public string ? user_account{ get; set; }

           [Required(ErrorMessage = "密码不能为空")]
           [StringLength(50, MinimumLength = 6, ErrorMessage = "密码长度应在6到50个字符之间")]
           public string ? user_password{ get; set; }

            // 用户所属的角色，这是一个外键
            public string ? role_id{ get; set; }

           [Required(ErrorMessage = "电话号码不能为空")]
           [Phone(ErrorMessage = "电话号码格式不正确")]
           public string? phone{ get; set; }

            // 二进制流数据,存放用户的头像
            public byte[] ? avater{ get; set; }

            // 表的自增序列
            public long keyid{ get; set; }
     }
    }
